<html>
<head><meta charset="utf-8"><title>leak check to universes take 2 #65232 · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html">leak check to universes take 2 #65232</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="178841790"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178841790" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178841790">(Oct 23 2019 at 10:49)</a>:</h4>
<p>since I have a little experience with region errors, I was looking at <a href="https://github.com/rust-lang/rust/issues/65232" target="_blank" title="https://github.com/rust-lang/rust/issues/65232">#65232</a>'s and have written down a couple of maybe-useful notes</p>



<a name="178841874"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178841874" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178841874">(Oct 23 2019 at 10:50)</a>:</h4>
<p>especially about the "expected X, found X" errors, which we did somewhat improve before in <a href="https://github.com/rust-lang/rust/issues/57901" target="_blank" title="https://github.com/rust-lang/rust/issues/57901">#57901</a> (albeit with the "little odd" wording <span class="user-mention" data-user-id="116118">@Matthew Jasper</span> reported -- and which is the work you asked me about a couple weeks back Matthew, it was merged but they mostly don't show with borrowck=mir, where we'd get the "higher-ranked subtype error" most of the time IIUC), and was reported in <a href="https://github.com/rust-lang/rust/issues/57362" target="_blank" title="https://github.com/rust-lang/rust/issues/57362">#57362</a></p>



<a name="178841971"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178841971" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178841971">(Oct 23 2019 at 10:52)</a>:</h4>
<p>in particular I looked at <a href="https://github.com/rust-lang/rust/blob/master/src/test/ui/issues/issue-57362-2.rs" target="_blank" title="https://github.com/rust-lang/rust/blob/master/src/test/ui/issues/issue-57362-2.rs">this test case</a> producing <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/test/ui/issues/issue-57362-2.stderr" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/test/ui/issues/issue-57362-2.stderr">this output</a> with the PR</p>



<a name="178842041"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842041" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842041">(Oct 23 2019 at 10:53)</a>:</h4>
<p>niko you <a href="https://github.com/rust-lang/rust/pull/65232#issuecomment-540567036" target="_blank" title="https://github.com/rust-lang/rust/pull/65232#issuecomment-540567036">mentioned</a> maybe breaking the previous work on these errors but no we can still <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/test/ui/issues/issue-57362-2.stderr#L1-L14" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/test/ui/issues/issue-57362-2.stderr#L1-L14">see it in the output</a>.</p>



<a name="178842086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842086">(Oct 23 2019 at 10:54)</a>:</h4>
<p>in this case the difference is that there are 2 <code>RegionResolutionError</code>s instead of 1:</p>
<ul>
<li>a <code>SubSupConflict</code> which is the "implementation is not general enough" error with the "odd wording"</li>
<li>your new <code>UpperBoundUniverseConflict</code> error, which ends up as the "expected X found X" error</li>
</ul>



<a name="178842127"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842127" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842127">(Oct 23 2019 at 10:55)</a>:</h4>
<p>did we want 2 errors here ? (or should one actually subsume/suppress the other, especially if upper bound universe conflicts partially overlap with sub-sup conflicts ?)</p>



<a name="178842269"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842269" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842269">(Oct 23 2019 at 10:57)</a>:</h4>
<p>in any case, the <code>UpperBoundUniverseConflict</code> errors will not be using the <code>nice_region_errors</code> changes you added in <code>try_report_placeholder_conflict</code> <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/placeholder_error.rs#L110-L127" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/placeholder_error.rs#L110-L127">here</a> to support them, because <code>try_report_nice_region_error</code> doesn't know about them <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L20" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L20">here</a>, and also <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L80-L84" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L80-L84">here</a> just a bit later via <code>try_report_named_anon_conflict</code></p>
<p>this, IIUC, will reject the possibility of outputting a nice region error <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/mod.rs#L320" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/mod.rs#L320">here</a> and emit a placeholder failure error via <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/mod.rs#L385-L407" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/mod.rs#L385-L407">this</a> instead</p>
<p>(but accepting this new region resolution error variant where I've linked might require the dummy sub region again, or making <code>get_regions</code> and eg <code>try_report_named_anon_conflict</code> -- which itself tries to report its own nice region errors before placeholder conflicts -- support optional sub/sup regions)</p>



<a name="178842336"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842336" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842336">(Oct 23 2019 at 10:58)</a>:</h4>
<p>but with this, it will make the 2 errors trigger the <code>try_report_placeholders_trait</code> message</p>



<a name="178842373"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842373" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842373">(Oct 23 2019 at 10:59)</a>:</h4>
<p>however the <code>ObligationCause</code> will be an item obligation, and the error message will think it's coming from a where clause, which is not technically in the surface syntax in this test but can probably be understood, or improved over time (and which I can do btw)</p>



<a name="178842629"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842629" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842629">(Oct 23 2019 at 11:04)</a>:</h4>
<p>(so without other changes/improvements elsewhere, the second error </p>
<div class="codehilite"><pre><span></span>error[E0308]: mismatched types
  --&gt; $DIR/issue-57362-2.rs:22:13
   |
LL |     let x = &lt;fn (&amp;())&gt;::make_g();
   |             ^^^^^^^^^^^^^^^^^^ one type is more general than the other
   |
   = note: expected type `X`
              found type `X`
</pre></div>


<p>would now be, say, <a href="https://gist.github.com/lqd/a91a6ef849f87f9a4b713b7958387372" target="_blank" title="https://gist.github.com/lqd/a91a6ef849f87f9a4b713b7958387372">this</a>)</p>



<a name="178842770"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178842770" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178842770">(Oct 23 2019 at 11:07)</a>:</h4>
<p>now that I've finished writing up the notes, I can mention <span class="user-mention" data-user-id="116009">@nikomatsakis</span> -- and if it helps I can also look at the other stderr files, to see if this little analysis applies to them as well, just let me know</p>



<a name="178844936"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/178844936" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#178844936">(Oct 23 2019 at 11:43)</a>:</h4>
<p>also <span class="user-mention" data-user-id="116118">@Matthew Jasper</span> about <a href="https://github.com/rust-lang/rust/pull/65232#discussion_r334280541" target="_blank" title="https://github.com/rust-lang/rust/pull/65232#discussion_r334280541">your question</a>, it seems the answer is "yes and no": there are 2 errors at this point, replacing <code>'x</code> with <code>'static</code> in the closure, or making <code>'x: 'static</code> in the fn, will both get rid of the second error but not the first one</p>



<a name="180443659"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180443659" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180443659">(Nov 11 2019 at 17:41)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> thanks for this. I started doing some digging myself. One thing that seems surprising -- you said that the "nice region errors" don't consider <code>UpperBoundUniverseConflict</code>, but at least on my branch it <em>does</em></p>



<a name="180443665"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180443665" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180443665">(Nov 11 2019 at 17:41)</a>:</h4>
<p>I'm actually not sure why it's not triggering</p>



<a name="180443667"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180443667" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180443667">(Nov 11 2019 at 17:41)</a>:</h4>
<p>I'm adding a bit more debug</p>



<a name="180443684"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180443684" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180443684">(Nov 11 2019 at 17:41)</a>:</h4>
<p>that said, I agree that we don't really want two errors here anyway, they are effectively duplicates</p>



<a name="180446846"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180446846" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180446846">(Nov 11 2019 at 18:21)</a>:</h4>
<p>hum I did build your branch at the time to investigate, and it didn’t seem to trigger until I made the changes I mentioned here</p>



<a name="180447566"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180447566" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180447566">(Nov 11 2019 at 18:30)</a>:</h4>
<p>to maybe be more clear, the "big match" in <code>try_report_placeholder_conflict</code> does handle them, but they never did get there</p>



<a name="180447597"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180447597" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180447597">(Nov 11 2019 at 18:31)</a>:</h4>
<p>because <code>try_report_nice_region_error</code> didn't itself know about this new variant</p>



<a name="180447613"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180447613" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180447613">(Nov 11 2019 at 18:31)</a>:</h4>
<p>but maybe you've updated the branch since I last saw it though, let me check</p>



<a name="180448485"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180448485" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180448485">(Nov 11 2019 at 18:44)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> they'll trigger if you add the <code>UpperBoundUniverseConflict</code> variant here <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L20" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L20">https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L20</a></p>



<a name="180451791"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180451791" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180451791">(Nov 11 2019 at 19:22)</a>:</h4>
<p>and also here <a href="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L80-L84" target="_blank" title="https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L80-L84">https://github.com/rust-lang/rust/blob/b99b7325e36fb14ee4391f0d3193d2ea640dabcf/src/librustc/infer/error_reporting/nice_region_error/mod.rs#L80-L84</a></p>



<a name="180455635"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455635" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455635">(Nov 11 2019 at 20:07)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> I think I found the bug</p>



<a name="180455646"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455646" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455646">(Nov 11 2019 at 20:07)</a>:</h4>
<p>oh, I see you .. yes</p>



<a name="180455648"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455648" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455648">(Nov 11 2019 at 20:07)</a>:</h4>
<p>that is the change I made, more or less :)</p>



<a name="180455649"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455649" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455649">(Nov 11 2019 at 20:07)</a>:</h4>
<p>haha</p>



<a name="180455663"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455663" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455663">(Nov 11 2019 at 20:07)</a>:</h4>
<p>more to the point, I removed the match altogether</p>



<a name="180455740"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455740" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455740">(Nov 11 2019 at 20:08)</a>:</h4>
<p>nice :)</p>



<a name="180455763"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455763" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455763">(Nov 11 2019 at 20:08)</a>:</h4>
<p>this required a few other minor changes</p>



<a name="180455817"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455817" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455817">(Nov 11 2019 at 20:09)</a>:</h4>
<p>the change in <code>get_regions</code> might have required to use the dummy sub again</p>



<a name="180455877"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455877" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455877">(Nov 11 2019 at 20:10)</a>:</h4>
<p>I made <code>get_regions</code> return an <code>Option</code></p>



<a name="180455885"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455885" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455885">(Nov 11 2019 at 20:10)</a>:</h4>
<p>and the callers just use <code>?</code></p>



<a name="180455896"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455896" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455896">(Nov 11 2019 at 20:10)</a>:</h4>
<p>about to push, I was making <code>x.py test --bless</code> work</p>



<a name="180455903"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455903" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455903">(Nov 11 2019 at 20:10)</a>:</h4>
<p>yeah that's what I was mentioning last time as well :)</p>



<a name="180455918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455918">(Nov 11 2019 at 20:10)</a>:</h4>
<p>(including those 2 exact same links you know :p)</p>



<a name="180455929"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455929" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455929">(Nov 11 2019 at 20:11)</a>:</h4>
<p>sigh</p>



<a name="180455931"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455931" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455931">(Nov 11 2019 at 20:11)</a>:</h4>
<p>but buried among too many text for sure</p>



<a name="180455942"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455942" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455942">(Nov 11 2019 at 20:11)</a>:</h4>
<p>glad it's working now</p>



<a name="180455946"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455946" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455946">(Nov 11 2019 at 20:11)</a>:</h4>
<p>now the question is</p>



<a name="180455947"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455947" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455947">(Nov 11 2019 at 20:11)</a>:</h4>
<p>you'll probably have the "where clause" error mesg tho now</p>



<a name="180455956"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455956" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455956">(Nov 11 2019 at 20:11)</a>:</h4>
<p>it seems like we don't get 2 errors anymore</p>



<a name="180455960"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180455960" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180455960">(Nov 11 2019 at 20:11)</a>:</h4>
<p>I think some duplicate suppression is working? not really sure what is happening :)</p>



<a name="180456013"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456013" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456013">(Nov 11 2019 at 20:12)</a>:</h4>
<p>that's fortunate :)</p>



<a name="180456015"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456015" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456015">(Nov 11 2019 at 20:12)</a>:</h4>
<p>the question is ... what do I have to do to land this branch besides this</p>



<a name="180456022"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456022" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456022">(Nov 11 2019 at 20:12)</a>:</h4>
<blockquote>
<p>I think some duplicate suppression is working? not really sure what is happening :)</p>
</blockquote>
<p>not 100% sure</p>



<a name="180456037"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456037" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456037">(Nov 11 2019 at 20:12)</a>:</h4>
<p>were you testing <a href="https://github.com/rust-lang/rust/blob/master/src/test/ui/issues/issue-57362-2.rs" target="_blank" title="https://github.com/rust-lang/rust/blob/master/src/test/ui/issues/issue-57362-2.rs">https://github.com/rust-lang/rust/blob/master/src/test/ui/issues/issue-57362-2.rs</a> ?</p>



<a name="180456199"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456199" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456199">(Nov 11 2019 at 20:14)</a>:</h4>
<p>some of Matthew's concerns can probably be dealt with in future PRs (which I can also work on, esp around the error messages and things like this)</p>



<a name="180456222"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456222" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456222">(Nov 11 2019 at 20:15)</a>:</h4>
<p>but they still had some questions IIRC</p>



<a name="180456316"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456316" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456316">(Nov 11 2019 at 20:16)</a>:</h4>
<p>maybe a crater run ?</p>



<a name="180456375"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456375" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456375">(Nov 11 2019 at 20:17)</a>:</h4>
<p>(you left a list of TODO items in the PR text as well)</p>



<a name="180456389"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456389" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456389">(Nov 11 2019 at 20:17)</a>:</h4>
<blockquote>
<p>the question is ... what do I have to do to land this branch besides this</p>
</blockquote>
<p>I think that I was generally happy with it. There was a regression that I was somewhat concerned about ...</p>



<a name="180456479"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180456479" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180456479">(Nov 11 2019 at 20:18)</a>:</h4>
<p>src/test/ui/hrtb/issue-57639.rs<br>
<a href="https://github.com/rust-lang/rust/pull/65232/files#diff-973f3a129f85d3c38af3cdbb4557fbc6" target="_blank" title="https://github.com/rust-lang/rust/pull/65232/files#diff-973f3a129f85d3c38af3cdbb4557fbc6">https://github.com/rust-lang/rust/pull/65232/files#diff-973f3a129f85d3c38af3cdbb4557fbc6</a></p>



<a name="180457526"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180457526" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180457526">(Nov 11 2019 at 20:32)</a>:</h4>
<p>this regression seemed uncommon last time (eg it didn't trigger on the universes crater run at the time)</p>



<a name="180523344"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180523344" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180523344">(Nov 12 2019 at 14:49)</a>:</h4>
<p>One thing I am wondering about is the coherence effects</p>



<a name="180523358"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180523358" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180523358">(Nov 12 2019 at 14:49)</a>:</h4>
<p>I feel like there might need to be an RFC or other formal decision</p>



<a name="180523367"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180523367" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180523367">(Nov 12 2019 at 14:49)</a>:</h4>
<p>I do think I could make a warning period, having thought about it some</p>



<a name="180523375"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/leak%20check%20to%20universes%20take%202%20%2365232/near/180523375" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/leak.20check.20to.20universes.20take.202.20.2365232.html#180523375">(Nov 12 2019 at 14:49)</a>:</h4>
<p>I think I might prefer to put off the NLL work</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>